package com.atom.module.author.context;

import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;

/**
 * 权限信息
 *
 * @author ruoyi
 */
public class PermissionContextHolder {
    private static final String PERMISSION_CONTEXT_ATTRIBUTES = "PERMISSION_CONTEXT";

    public static void setContext(String... permission) {
        RequestContextHolder.currentRequestAttributes()
                .setAttribute(PERMISSION_CONTEXT_ATTRIBUTES, permission,
                        RequestAttributes.SCOPE_REQUEST);
    }

    public static String[] getContext() {
        Object attribute = RequestContextHolder.currentRequestAttributes()
                .getAttribute(PERMISSION_CONTEXT_ATTRIBUTES,
                        RequestAttributes.SCOPE_REQUEST);
        if (attribute instanceof String[]) {
            return (String[]) attribute;
        }
        return new String[0];
    }
}
